package 复习集合;

import java.awt.print.PrinterGraphics;
import java.util.ArrayList;
import java.util.DoubleSummaryStatistics;
import java.util.Scanner;
import java.util.Set;

public class Text2 {
    public static ArrayList<String> list=new ArrayList<>();
    public static void main(String[] args) {
        //ktv点歌系统
        Default_Song();
        while (true){
            System.out.println("---------------欢迎来到点歌系统----------");
            System.out.println("1.添加歌曲至列表");
            System.out.println("2.将歌曲置顶");
            System.out.println("3.将歌曲前移一位");
            System.out.println("4.退出");
            System.out.print("请你输入指定的序号:");
            int i = new Scanner(System.in).nextInt();
            if (i==1){
                //1.添加歌曲至列表
                Add_Song();
            }
            if (i==2){
                //2.将歌曲置顶
                Top_Song();
            }
            if (i==3){
                //3.将歌曲前移一位
                Set_Song();
            }
            if (i==4){
               // 4.退出
                break;
            }
        }
    }

    /**
     * 添加歌曲到列表中
     */
    public static void Add_Song(){
        System.out.println("输入您要添加的歌曲:");
        String Song=new Scanner(System.in).next();

        list.add(Song);
        System.out.println(">>>>添加成功");
        Print_Playlists();
    }

    /**
     * 歌曲置顶
     */
    public static void Top_Song(){
        //思路:输入歌曲,判断该歌曲是否在歌曲列表中出现
        //存在就进行删除,在进行添加在0索引操作
        Print_Playlists();
        System.out.println("请您输入要置顶的歌曲:");
        String Song = new Scanner(System.in).next();
        int SongIndex = list.indexOf(Song);//查询歌曲所在的位置
        if (SongIndex==0){
            System.out.println(Song+"已经置顶了");
        }
        if (SongIndex<0){
            System.out.println("该歌曲列表中没有歌曲"+Song);
        }else {
            //存在就进行删除,在进行添加在0索引操作
            list.remove(Song);
            list.add(0,Song);
        }
        Print_Playlists();
    }

    /**
     * 初始化歌曲
     */
    public static void Default_Song(){
        list.add("我是你的眼");
        list.add("爱你一万年");
        list.add("风");
    }

    /**
     * 将歌曲前移一位
     */
    public static void Set_Song(){
        Print_Playlists();
        System.out.print("请您输入要前置的歌曲:");
        String Song = new Scanner(System.in).next();
        int SongIndex = list.indexOf(Song);//查询歌曲所在的位置
        if (SongIndex==0){
            System.out.println(Song+"已经顶部了");
        }
        if (SongIndex<0){
            System.out.println("该歌曲列表中没有歌曲"+Song);
        }else{
            list.remove(Song);
            list.add(SongIndex-1,Song);
        }
        Print_Playlists();
    }

    /**
     * 打印歌单
     */
    public static void Print_Playlists(){
        System.out.println("歌曲列表:"+list);
    }
}
